<html>

<head>
<meta charset="utf-8">


<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>12</title>
</head>

<body text="#FFFFFF" bgcolor="#000000">

<p><font size="2">12.后变址Y间接寻址</font></p>
<p><font size="2">&nbsp; 两字节指令</font></p>
<p><font size="2">&nbsp; 指令格式:</font></p>
<table border="0" cellspacing="1" width="188">
  <tr>
    <td width="102">操作码</td>
    <td width="79">第一字节</td>
  </tr>
  <tr>
    <td width="102">零页间接地址</td>
    <td width="79">第二字节</td>
  </tr>
</table>
<p><font size="2">&nbsp; 这种寻址方式是对IND部分所指出的零页地址先做一次间接寻址,得到一个低8位地址</font></p>
<p><font size="2">&nbsp; 再对IND + 1 作一次间接寻址,得到一个高8位地址</font></p>
<p><font size="2">&nbsp; 最后把这高,低两部分地址合起来作为16的基地址,和寄存器Y进行变址计算得到操作数的有效地址,注意的是这里IND是零页地址</font></p>
<p><font size="2">&nbsp; 看一个例子:</font></p>
<p><font size="2">&nbsp; 例如指令 LDA ($F0),Y</font></p>
<p><font size="2">&nbsp; 我们看看寻址过程:</font></p>
<p><font size="2">&nbsp; 设 (F0)=20,(F1)=30,(Y)=03</font></p>
<p><font size="2">&nbsp; 先对地址F0间址得到低8位地址 20</font></p>
<p><font size="2">&nbsp; 再对地址F0+1间址得到高8位地址30</font></p>
<p><font size="2">&nbsp; 把两次结果合起来得到16位的基地址 3020</font></p>
<p><font size="2">&nbsp; 然后再把地址3020和寄存器Y进行变址,得到有效地址3020+(Y)=3020+03=3023</font></p>
<p><font size="2">&nbsp; 所以该指令的功能是将地址3023的内容送寄存器A</font></p>

</body>

</html>
